home *** CD-ROM | disk | FTP | other *** search
/ SGI Freeware 2002 November / SGI Freeware 2002 November - Disc 2.iso / dist / fw_libgeotiff.idb / usr / freeware / share / doc / libgeotiff / README.z / README
Text File  |  2002-10-07  |  6KB  |  183 lines

  1. About LIBGEOTIFF:
  2. -----------------
  3.  
  4. This library is designed to permit the extraction and parsing of the
  5. "GeoTIFF" Key directories, as well as definition and installation
  6. of GeoTIFF keys in new files. For more information about GeoTIFF
  7. specifications, projection codes and use, see the WWW web page at:
  8.  
  9.    http://www.remotesensing.com/geotiff/geotiff.html
  10.  
  11. or at:
  12.  
  13.    http://www.geotiff.org/
  14.    
  15. or the FTP archive at:
  16.  
  17.    ftp://ftp.remotesensing.org/pub/geotiff
  18.  
  19. or the older FTP archive at:
  20.  
  21.    ftp://ftpmcmc.cr.usgs.gov/release/geotiff/jpl_mirror/
  22.  
  23.  
  24. Use of LIBTIFF
  25. --------------
  26.  
  27. The default configuration assumes that the public-domain LIBTIFF
  28. package for reading and writing TIFF files has been installed, with
  29. the development kit (include files).  The latest version of libtiff may 
  30. be found at:
  31.  
  32.    http://www.libtiff.org/
  33.    
  34. For this build to work you must use libtiff version v3.4beta018 or newer.
  35. If you are building it yourself, and have libtiff 3.5.6 or later, you
  36. should use the "install-private" make target of libtiff instead of "install" 
  37. to install some private include files required by libgeotiff.
  38.  
  39. Building LIBGEOTIFF:
  40. --------------------
  41.  
  42. Assuming that whatever TIFF library you use has been built, and installed
  43. may now build the rest of the geotiff library with:
  44.  
  45.    % cd libgeotiff
  46.    % ./configure
  47.    % make 
  48.  
  49. Common Configuration Issues:
  50.  
  51.  o If you want to alter the compiler used, set the CC environment variable
  52.    before running configure.  
  53.  
  54.    % setenv CC cc
  55.    % rm config.status
  56.    % ./configure
  57.    % make clean 
  58.    % make 
  59.  
  60.  o If you want to control the compiler files, set the CFLAGS environment 
  61.    variable.  This can be used to override the default optimization/debug
  62.    flags for instance.
  63.  
  64.    % setenv CFLAGS -O4
  65.    % rm config.status
  66.    % ./configure
  67.    % make clean 
  68.    % make
  69.  
  70.  o If the system can't find libtiff, you can use the --with-libtiff option
  71.    variable to point to it
  72.  
  73.    % rm config.status
  74.    % ./configure --with-libtiff=/u/contrib/libtiff-3.5.5/libtiff
  75.    % make clean 
  76.    % make
  77.  
  78.  o If you want to use EPSG tables compiled into the code, use the
  79.    --with-incode-epsg configure switch.  It will make the library and
  80.    resulting executables substantially larger (~600K), but will avoid any 
  81.    configuration issues with finding the .csv files. 
  82.    
  83.    % rm config.status
  84.    % ./configure --with-incode-epsg
  85.    % make clean
  86.    % make
  87.  
  88.  o If you want to build in support for the PROJ.4 library, so that listgeo
  89.    can report corner coordinates in lat/long, it may be necessary to 
  90.    specify the directory containing the libproj include files, and library.
  91.    (PROJ.4 can also be disabled by passing --without-proj)
  92.  
  93.    % rm config.status
  94.    % ./configure --with-proj=/contrib/proj-4.4.1
  95.    % make clean
  96.    % make
  97.  
  98.  o The logic to build shared libraries is pretty weak, and is likely to
  99.    only work on systems with the GNU tool chain (gcc, and ld) installed. 
  100.    On other systems you can try hacking on Makefile after running configure.
  101.    It may be necessary to set the GEOTIFF_SO macro to "libgeotiff.1.1.x"
  102.    as it is made empty by default on systems configure doesn't think can 
  103.    build shared libraries.
  104.  
  105.  
  106. Test Programs:
  107.  
  108. There are two demonstration test programs "makegeo" and "listgeo"
  109. that create and list-out the GeoTIFF tags and keys associated 
  110. with a small TIFF file, as well as a full-featured utility called
  111. "geotifcp". These will all be built in the bin/ directory as a matter of 
  112. course, though may require modification if you are not using LIBTIFF, as they
  113. make explicit calls to LIBTIFF for opening the files and setting the
  114. tags. To run them simply call:
  115.  
  116.   % bin/makegeo
  117.   % bin/listgeo newgeo.tif
  118.  
  119. to generate and list an example GeoTIFF file. To see the
  120. "geotifcp" utility in action, first call:
  121.  
  122.   %  bin/listgeo newgeo.tif > metadata.txt
  123.  
  124. to create a GeoTIFF metadata file "metadata.txt", and then
  125.  
  126.   %  bin/geotifcp  -g  metadata.txt  newgeo.tif  newer.tif
  127.  
  128. to copy the TIFF file newgeo.tif to newer.tif, using the
  129. GeoTIFF metadata as stored in "metadata.txt". See "docs/manual.txt"
  130. for further uses of geotifcp.
  131.  
  132. To use the new normalization capability of listgeo, the program needs
  133. to be able to find the CSV files.  Use something like the following, 
  134. but indicating the correct path to the CSV directory (libgeotiff/csv). 
  135.  
  136.   % bin/listgeo -t csv -norm newgeo.tif
  137.  
  138. To convert a projection metafile, an ESRI world file, and a raw TIFF file
  139. into a GeoTIFF file do something like the following:
  140.  
  141.   % bin/tiffcp -g metadata.txt -e abc.tfw abc.tif geo_abc.tif
  142.  
  143.  
  144.  
  145. Non-Standard Configuration:
  146. ---------------------------
  147.  
  148. If you are using a TIFF software package other than libtiff, then you
  149. must override the TIFF file methods used in LIBGEOTIFF. To do this, 
  150. go into directory libgeotiff and edit the files:
  151.  
  152.     "geo_tiffp.h"
  153.     "geo_tiffp.c"
  154.     
  155. which contain all of the TIFF externals. You will need to define your
  156. own versions of the TIFF tag reading, writing, and memory allocation
  157. calls. See the comments of those two files to see what needs to be
  158. changed. Also, whatever software package you use will have to 
  159. recognize the GeoTIFF tags listed in the include files, and permit
  160. variable-length arrays to be passed in to those tags.
  161.  
  162.  
  163. Credits
  164. -------
  165.  
  166.  o This library was originally written by Niles Ritter (also the primary
  167.    author of the GeoTIFF specification).  
  168.  
  169.  o It is currently being maintained by Frank Warmerdam (warmerdam@pobox.com),
  170.    who also added the "normalization" capability of GTIFGetDefn() using 
  171.    EPSG CSV files. 
  172.  
  173.  o Support for "incode" CSV files was submitted by Derrick J Brashear 
  174.    <shadow@dementia.org>. 
  175.  
  176.  o Eric Brown of Universal Systems, who contributed a bug fix to 
  177.    GTIFPCSToImage().
  178.  
  179.  o Many others who contributed before it occured to me to maintain credits.
  180.  
  181.  
  182.  
  183.